برنامه: بررسی وجود داشتن یا نداشتن عدد ورودی در آرایه
الگوریتم:
در این روش تک تک خانه های آرایه را مورد بررسی قرار می دهیم که آیا عدد مورد نظر (obj) در آن وجود دارد یا خیر.
int linear_search(int arr[],int arrsize, int obj)
{
for(int i=0;i<arrsize;i++)
{
if(arr[i] == obj)
{
return i;
}
}
return (-1);
}
توسط دستورات بالا جست و جو انجام می شود که در صورت یافتن، مکان قرار گیری عنصر در آرایه( i )، و اگر هم عنصر مورد نظر یافت نشد مقدا 1- را بر می گرداند
*در دو برنامه سی شارپ و جاوااسکریپت ، تابع ، ابتدا آرایه ی ورودی را به یک آرایه از اعداد تبدیل می کند سپس توسط دستورات فوق ، عمل جست و جو را انجام می دهد.
آرایه ورودی باید بدون هیچ گونه فاصله ای به این صورت وارد شود که بعد از هر عدد یک علامت کاما ( , ) قرار بگیرد.
مانند:
1,5,6,88,52,101,23,25,12,1,47,7,8,
برنامه ی جست و جوی خطی به زبان ++C |
//Writed By barnamenevisi-ccj.mihanblog.com
#include #include
#define size 10
int linear_search(int arr[],int arrsize, int obj) { for(int i=0;i<arrsize;i++) { if(arr[i] == obj) { return i; } } return (-1); } main() { int test[size]={2,6,4,8,3,5,9,7,1,0}; int object; int result;
cout<<"\n\nEnter Number to search it : "; cin>>object;
result = linear_search(test,size,object); if ( result == -1) { cout<<"\nNot Find :( ."; } else{ cout<<"\nItem Founded in element "<<result+1<<" ."; }
getch(); return 0; } |
برنامه ی جست و جوی خطی به زبان #C |
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;
namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } //................................................................................... int linear_search(string test,string objsearch) { int i = 0; int test2size = 0; int obj = Int32.Parse(objsearch);
for (i = 0; i < txt1.TextLength; i++) if (test[i] == ',') test2size++;
int[] test2 = new int[test2size]; test2size = 0;
for (i = 0; i < txt1.TextLength; i++) {
if (test[i] != ',') test2[test2size] = test2[test2size] * 10 + Int32.Parse(test[i].ToString()); else test2size++;
}
for(i=0;i<test2size;i++) { if(test2[i] == obj) { return i; } } return (-1); }
//.............................................................. public void button1_Click(object sender, EventArgs e) {
int result = linear_search(txt1.Text , txt2.Text);
if (result == -1) MessageBox.Show("Not Found"); else MessageBox.Show("Item Founded in element " + (result+1));
} } } |
:: موضوعات مرتبط:
پروژه #c ,
پروژه طراحی الگورتم ,
,